Adaptive Parallel Query Execution in DBS3
نویسندگان
چکیده
DBS3 (Database System for Shared Store) [1] is a parallel database system for sharedmemory multiprocessors [7]. It has been implemented on an Encore Multimax (10 processors) and on a Kendal Square Research KSR1 (72 processors). In a shared-memory architecture, each processor has uniform access to the entire database through a global main memory. Thus, the parallel scheduler, which allocates processors to the query's operations, has much freedom for balancing the query load onto processors. However, query response time can be hurt by several barriers which must be overcome by the scheduler: start-up time of parallel operations, interference and poor load balancing among the processors due to skewed data distribution. In DBS3, we use static relation partitioning to reduce interference and for compiletime query parallelization and dynamic allocation of processors to operations, independent of the degree of partitioning, to control start up time and load balancing. In this paper, we present the adaptive parallel query execution model of DBS3. A simple analysis outlines three important factors that influence the behavior of our model: skew factor, degree of parallelism and degree of partitioning. Then we reports on experiments with the 72-node KSR1 version of DBS3 with the relations cached in main memory. This main memory assumption is not a restriction of the model but a constraint of our KSR1 configuration which has a single disk.
منابع مشابه
Parallel Query Processing in DBS3
In this paper, we describe our approach to the compile-time optimization and parallelization of queries for execution in DBS3, a shared-memory parallel database system. Our approach enables exploring a search space large enough to include zigzag trees which are intermediate between left-deep and right-deep trees. Zigzag trees are shown to provide better response time than right-deep trees in th...
متن کاملSkew Handling in the DBS3 Parallel Database System
The gains of parallel query execution can be limited because of high start-up time, interference between execution entities, and poor load balancing. In this paper, we present a solution which reduces these limitations in DBS3, a shared-memory parallel database system. This solution combines static data partitioning and dynamic processor allocation to adapt to the execution context. It makes DB...
متن کاملA Cost Evaluator for Parallel Database Systems
The design of ESQL queries Optimizer may be decomposed into three dimensions: (i) the search space which defines the syntactic representation of all relevant aspects of an execution, (ii) the search strategy used to generate an optimal execution plan and (iii) the cost evaluator which calculates the metrics used by the search strategies. In this paper, we investigate issues involved in designin...
متن کاملDynamic Join Algorithm Switching at Query Execution Time
Join optimization is one of the most challenging tasks in query processing. The performance of joins depends not only on the algebraical/logical query execution plan (QEP), but also on the chosen join algorithms. Static optimization techniques often suffer from outdated or not available statistics on the data. This may result in sub-optimal QEPs and poor query execution times. Adaptive Query Pr...
متن کاملA Native and Adaptive Approach for Unified Processing of Linked Streams and Linked Data
In this paper we address the problem of scalable, native and adaptive query processing over Linked Stream Data integrated with Linked Data. Linked Stream Data consists of data generated by stream sources, e.g., sensors, enriched with semantic descriptions, following the standards proposed for Linked Data. This enables the integration of stream data with Linked Data collections and facilitates a...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1996